---
title: Attorney-to-claim assignment
summary: End-to-end workflow for assigning an attorney to a claim/worker, including task-generation and calendar-sync side effects.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-21
operation_id: OP-APP-002
trigger: User selects a claim/worker context on the attorney assignment screen and submits an assignment
---

# Attorney-to-claim assignment

This workflow lets legal staff assign an attorney to a claim/worker through the `frmAttorneyAssignment` screen, resolving claim context and security, persisting the assignment, and triggering claim-task and Exchange calendar side effects.

| Field | Value |
| --- | --- |
| **Operation ID** | OP-APP-002 |
| **Trigger** | User opens `frmAttorneyAssignment.aspx` and selects a claim/worker context |
| **Libraries involved** | [SAIF.Application.Claim](../../libraries/saif-application-claim/overview.md), [SAIF.Application.Claim.Legal](../../libraries/saif-application-claim-legal/overview.md), [SAIF.Business.Claim.Legal](../../libraries/saif-business-claim-legal/overview.md), [SAIF.Business.Tasks.Claim](../../libraries/saif-business-tasks-claim/overview.md) |
| **Screens** | Attorney Assignment screen (`frmAttorneyAssignment.aspx`) |
| **Inputs** | Claim/worker context, selected attorney |
| **Outputs** | New `ATTORNEY_WORKER_ASSIGNMENT`/`ATTORNEY_CONFLICT` records, a raised claim task, optional Exchange calendar sync |

## Steps

1. User opens `frmAttorneyAssignment.aspx` and selects a claim/worker context.
2. `ClaimAppManager` ([SAIF.Application.Claim](../../libraries/saif-application-claim/overview.md)) resolves claim context via `ChangeContext()` and evaluates `ClaimSecurity` — see [Evaluate claim access](../../libraries/saif-application-claim/operations/evaluate-claim-access.md) (conflict/exposure checks) ([BR-APP-002](../business-rules.md#br-app-002-claim-confidentiality-is-composed-from-claim-context-and-legal-access-checks)).
3. The legal manager ([SAIF.Application.Claim.Legal](../../libraries/saif-application-claim-legal/overview.md)) calls [clsAssignmentManager.RunAssignmentProcess](../../libraries/saif-application-claim-legal/operations/run-assignment-process.md), which runs [SAIF.Business.Claim.Legal](../../libraries/saif-business-claim-legal/overview.md)'s [Attorney assignment batch](../../libraries/saif-business-claim-legal/operations/attorney-assignment-batch.md) operation to persist the assignment against `ATTORNEY_WORKER_ASSIGNMENT`/`ATTORNEY_CONFLICT` tables.
4. As a side effect, a claim task is raised through [SAIF.Business.Tasks.Claim](../../libraries/saif-business-tasks-claim/overview.md)'s [Bulk-raise claim tasks](../../libraries/saif-business-tasks-claim/operations/op-2-bulk-raise-claim-tasks.md) operation, enriched with claim data via `clsClaimData`.
5. `SAIF.Business.Claim.Legal`'s [Attorney assignment batch](../../libraries/saif-business-claim-legal/operations/attorney-assignment-batch.md) operation optionally syncs the attorney's Exchange calendar, gated by an environment check that determines whether real e-mail/calendar actions occur ([BR-APP-004](../business-rules.md#br-app-004-environment-classification-governs-real-vs-test-side-effects)).

## Process flow

The following diagram visualizes the attorney-to-claim assignment workflow, including its side effects.

```mermaid
flowchart TD
	Start(["User selects claim/worker<br>context"]) --> S1["ClaimAppManager resolves<br>claim context and<br>ClaimSecurity"]
	S1 --> S2["Legal manager persists<br>ATTORNEY_WORKER_ASSIGNMENT /<br>ATTORNEY_CONFLICT"]
	S2 --> S3["Bulk claim task raised via<br>SAIF.Business.Tasks.Claim"]
	S3 --> S4{Environment is production?}
	S4 -->|Yes| S5[Real Exchange calendar sync]
	S4 -->|No| S6[Test/no-op calendar sync]
	S5 --> EndOk([Assignment complete])
	S6 --> EndOk
```

## Failure and edge-case behavior
- If the production/non-production environment check is misclassified, non-production environments can perform real-world e-mail/calendar side effects.*

## Related documentation
- [Operations and processes](../operations-processes.md)
- [Business rules](../business-rules.md)
- [Data model](../data-model.md)

> **Note:** Statements marked with `*` were inferred from code structure, naming
> conventions, or contextual evidence where direct confirmation was not available
> in source artifacts.

## Sources
- LegalMaintenance web application (LegalMaintenance/*.aspx.vb)
- [SAIF.Application.Claim](../../libraries/saif-application-claim/overview.md)
- [SAIF.Business.Tasks.Claim](../../libraries/saif-business-tasks-claim/overview.md)
- [SAIF.Business.Claim.Legal](../../libraries/saif-business-claim-legal/overview.md)
